package a10_InterClass.memberInterClass;

/**
 * @Author quan
 * @Description 知识点1：成员内部类的使用特点
 * @Date 2023/3/2 16:35
 */
public class Outer {
    private String Outername = "张三";
    private void Outerfun(){
        //(2)在外部类的内部访问 内部类的属性和方法：要通过创建内部类的对象来访问
        Inter inter = new Inter();//首先创建一个内部类的对象inter
        System.out.println(inter.interNamePrivate);//访问属性
        inter.Interfun();//访问方法
        System.out.println("outter类的fun方法");
    };
    //-----------成员内部类：在类的里面定义的类-----------
    class Inter{
        private String interNamePrivate = "李四";
        String interNameNotPrivate;
    //1、内外部类可以访问彼此的私有域
        public void Interfun(){
            //(1)内部类访问外部类的私有成员变量：直接访问
            System.out.println(Outername);//外访问内的属性
            System.out.println("Inter类的fun方法");
//            Outerfun();//外访问内的方法
            //2、成员内部类不能定义静态属性或方法
//            static String age;//报错
        }
    }
    //-----------------------------------------------
    public static void main(String[] args) {
        Outer outer = new Outer();
        outer.Outerfun();
    }
}
